1. Field of the Invention
The present invention relates to systems and methods for management of interactive computer systems, and in particular to systems and methods for bookmarking user profiles and for selecting and activating the bookmarked user profiles, the bookmarked user profiles specifying at least the arrangements of an attached display device.
2. Description of the Related Art
Computer systems for some time have utilized graphical user interfaces (GUIs) to provide simple, intuitive and friendly access to system functions without requiring use of arcane and complex commands. GUIs typically present an arrangement of well-known graphical input elements, which can be selected and activated with a user pointing device in order to request system functions, and well-known output elements, which typically display information in adjustable windows.
Another common feature of computer systems are user profiles, which encapsulate user preferences for the many customizable system characteristics. Preferred characteristics encapsulated in user profiles include, notably, preferred GUI display characteristics and arrangements, along with other preferences such as lists of commonly-used system resources, files, World Wide Web (WWW) resources, and so forth.
In current computer systems, and especially in network connected computer systems, a single user profile often inadequately represents the complexity and diversity of user work. The number of system functions and resources relevant for a user often outstrips the abilities of present GUIs, in conjunction with available display devices, to manage a useable display of needed input and output display elements. Commonly-accessed resources for one user""s various tasks are often too numerous or in conflict with each other.
Approaches to solving this problem include providing each user with the possibility of multiple independent profiles, where each profile specifies, for one set of tasks, both a display arrangement of input and output elements and also other preferences. However, in systems with multiple user profiles, changing between profiles is cumbersome. For example, to change from a current user profile to a new user profile, it is usually required that a user log entirely off the system and then log on again with the new user profile. This logoff-logon process is disruptive, time consuming, and grating to the user. For example, since applications may not save their current state, upon next logon it may be necessary to configure them again into the desired state from scratch.
One exemplary system requiring logoff-logon to change user profiles is Sun Microsystems Solar operating system Common Desktop Environment. Although, this environment saves the current session upon logoff so that a user can return to the saved session and also allows choice of a default session, the user still has to save data from each individual application, such as text editors and spreadsheets, prior to logoff. Another exemplary system is the Microsoft Windows NT operating system. Although in this system a user can have multiple profiles, logoff-logon is required to switch between them. Also, because they are completely independent, web browser history, bookmarks, cookies, temporary Internet files, and so forth, also contained in each user profile, cannot be shared among profiles.
Another approach to user profile is found in the virtual desktop feature of certain X11 window managers (e.g., fvwm, twm), which variably maps a physical display onto a virtual screen surface that is larger than the limits of the physical display. The user can switch between desktops by moving the display mapping to different portions of the virtual screen, each of which presents a desktop with customized colors, names, icons, root windows, and so forth. This mechanism, however, is inefficient because all the applications in all the desktops must be simultaneously loaded and executing.
Yet a further approach is described in European patent application EP 0 691 605 A1. Although the system described therein allows a user to switch between different desktop environments without a cumbersome logoff-logon process, the environments available to a user must be linked into a rigid hierarchical structure which strictly limits the ability to navigate freely between available environments in a consistent manner
In summary, it is clear that all these known methods for management of user profiles, display arrangements, desktop arrangements, and so forth, are in one way or another cumbersome and limiting. What is needed, therefore, is a method and system for such management which allows simple, intuitive and friendly access to the plethora of system functions and resources available in modern computer systems.
Citation of a reference herein, or throughout this specification, is not to be construed as an admission that such reference is prior art to the Applicant""s invention or the invention subsequently claimed.
The objects of the present invention are to provide systems and methods which overcome the above identified problems in the current art, namely provision of simple, intuitive and friendly access to the plethora of system functions and resources available in modern computer systems, and, in particular, provision of improved methods for management of user profiles, display arrangements, desktop arrangements, and so forth. These objects are achieved by provision of a bookmark metaphor for user profile management in computer systems as described herein.
Generally, the bookmark function to which the present invention is directed permits a user to select and activate a bookmarked user profile, including indication of display arrangements, from a menu of saved (or bookmarked) user profiles. Activation of a user profile causes the display to be arranged according to the indicated display arrangement. Display elements include any visual representation of running applications. Such visual representations include, for example, windows opened with determined positions, sizes and contents, minimized windows, or other iconic representations of running applications. Further, activation of a user profile optionally causes as well the establishment of other user preferences included in the activated user profile. Other user preferences include, in various combinations, environmental parameters defining a system or application environment, lists of commands to be executed to establish a desired environment, and background applications useful or necessary for the foreground applications, and so forth. Background applications can include server applications such as database or transaction servers. The bookmark function of the present invention also provides for the creation, editing, management, and display of bookmarked user profiles.
In one aspect of the present invention, a user profile pertains to the aspects of the operating system environment of the user""s computer system which both manages the execution of one or more application programs for the user and also manages the arrangements of one or more display devices available to the user. In the following, for convenience only and without limitation, these aspect of the operating system environment are referred to as the xe2x80x9ctopxe2x80x9d program level (or the xe2x80x9ctop levelxe2x80x9d), and the one or more operating system components responsible for the top program level are referred to as the xe2x80x9cdesktopxe2x80x9d manager. In this aspect, therefore, the display arrangement described by a bookmarked user profile is the overall arrangement of application windows, iconic representations of running applications (such as minimized windows), system icons, and so forth presented on the user""s display devices. The bookmarked user profile also optionally includes further user preferences relating to the operating system environment and available to all applications. Such preferences can include lists of commands to be executed, or background servers, such as database servers, that should be activated even if they have no representation on the user""s display. For example, background servers indicated in an activated user profile that are not already running are started, while background servers that are already running but not indicated in an activated user profile are halted.
In particular, in this aspect, a menu of bookmarked user profiles is caused to be displayed in a manner consistent with the particular GUI of the operating system environment, for example, by selection of a xe2x80x9cBookmarkxe2x80x9d button displayed on an operating system taskbar. The menu of bookmarked user profiles can be displayed in various alternative manners. In one alternative, a list of textually-identified bookmarks is presented, optionally indexed by xe2x80x9cthumbnailsxe2x80x9d or arranged in a hierarchical structure of folders containing bookmarks or other folders. Instead of text-oriented lists, the bookmarks can be represented by icons, for example, by automatically generated icons mimicking the bookmarked user display arrangement, or by user configured icons. The bookmark menu, however displayed, can be navigated by use of a pointing device or a keyboard, where certain keys or key combinations have been established as cursor control keys.
Upon selection and activation from the bookmark menu of textually-identified or ironically-represented bookmarks, a user profile is established by arranging the display device according to the indicated display configuration and by establishing any additional user preferences present in the user profile in a manner appropriate to the operating system environment. In detail, the display is arranged according to indications in the display configuration by closing any open applications not indicated to be open, opening applications indicated to be open but not yet opened, sizing and arranging open windows as indicated, and presenting and positioning as indicated other display elements, such as system icons and other iconic representation of running applications.
In another aspect, the user profile pertains to the environment local to a single local application, i.e., to a xe2x80x9clowerxe2x80x9d program level (or to a xe2x80x9clower levelxe2x80x9d). An advantageous local application environment, for example, a word processor, a spreadsheet, or an e-mail program, in the present invention controls an application window on the display device interior to which display elements relevant to the application are presented, perhaps either in sub-windows or in an iconic representations. Application display elements include, for example, documents, spreadsheets, messages, other iconic representations appropriate to individual applications, or so forth.
In particular, in this aspect, a menu of saved profiles is caused to be displayed in a manner consistent with the GUI of the particular application, for example, by selection of a xe2x80x9cbookmarkxe2x80x9d button displayed on an.application toolbar. Selection of the bookmark button causes display of a bookmark menu with available bookmarks displayed in a, textual or iconic representation, as described above. Upon selection and activation, a bookmarked user profile is established by arranging the interior of the application window (at the xe2x80x9clowerxe2x80x9d program level) according to the indicated display configuration, for example, by opening, sizing and arranging indicated document, spreadsheet or message sub-windows, respectively. Also optionally, other user preferences indicated in the user profile information are set in the application.
In a further aspect, the bookmarking functions of this invention optionally operate in a hierarchical and recursive manner. In this aspect, an application can be opened by selection and activation of a bookmarked user profile at the top level that in turn indicates initial lower level profile that the application activates upon opening. Thereby, a single, bookmarked, top-level user profile can both indicate the overall arrangement of application windows on the user""s display devices and also indicate the detailed internal arrangement of the individual application windows opened. Further, user profile bookmarking can be extended to any program level having selectable and configurable display elements or user preferences, from a top operating system environment level, to a lower application level, to still lower sub-application level, and so forth.
The present invention is also directed to computer system for the practice of the invention""s bookmark methods. Appropriate computer system include, of course, laptop, desktop or server-type systems of known configuration, both networked or stand-alone. However, the invention is also applicable to other programmable systems with display devices of a size relatively limited in comparison to the elements needed to bell advantageously displayed. These other programmable system include portable communication devices such as personal digital assistants and wireless telephones. These other devices also include consumer electronics such as television with programmable elements or with a xe2x80x9cset-topxe2x80x9d box.
The present invention is also directed to software for directing computer system for the practice of the invention""s methods and to computer-readable media encoded with this software. In a preferred embodiment, this software is structured as a bookmark manager with interfaces, on the one hand to the operating system desktop manager and to the user""s applications, and with interfaces, on the other hand, to permanent storage where bookmarked user profiles can be stored.
In detail, the following embodiments and aspects implement these objects and aspect of the present invention. In a first embodiment, the present invention includes a method for user management of an interactive computer system having one or more attached display devices, the method comprising associating bookmark information with the user, wherein the bookmark information comprises one or more bookmarked user profiles, each user profile comprising indications describing an arrangement of display elements on the display devices, displaying in a pre-selected toolbar area on the display devices a selectable bookmark-display indicia, displaying on the display devices a bookmark menu upon user selection of the bookmark-display indicia, the bookmark menu comprising bookmark information associated with the user, wherein the bookmark menu provides for user selection of at least one bookmarked user profile, and arranging display elements on the display devices upon user selection of a user profile from the bookmark menu, wherein the display elements are arranged according to the indications in the selected user profile.
In a first aspect of the first embodiment, the invention also includes that the step of arranging further comprises: closing application windows not indicated to be open in the user profile, opening application windows (perhaps as minimized windows or as other iconic representations) indicated to be open in the user profile, positioning open application windows according to indications in the user profile, and sizing open application windows according to indications in the user profile. In a second aspect of the first embodiment, the invention also includes that the display elements further comprise elements displayed by a desktop manager of an operating system environment of the computer system, or further comprise application program sub-windows arranged within an application program window. In a third aspect of the first embodiment, the invention also includes that the bookmark menu includes one or more selectable commands for managing bookmark information associated with a user, and wherein the method further comprises a step of updating the bookmark information associated with a user upon user selection of one or more of the selectable commands. In a fourth aspect of the first embodiment, the invention also includes that a bookmarked user profile also comprises indications of further user preferences, and wherein the method further comprises a step of establishing the user preferences indicated in a selected user profile. These user preferences can include lists of commands to be executed or of background servers to be started or stopped.
In a second embodiment, the invention includes a computer system comprising: a processor with a CPU and CPU-accessible memory, devices for input from a user, and one or more display devices for output to a user, wherein the memory is configured with encoded program instructions for associating bookmark information with the user, wherein the bookmark information comprises one-or more bookmarked user profiles, each user profile comprising indications describing an arrangement of display elements on the display device, for displaying in a pre-selected toolbar area on the display devices a selectable bookmark-display indicia, for displaying on the display devices a bookmark menu upon user selection of the bookmark-display indicia, the bookmark menu comprising bookmark information associated with the user, wherein the bookmark menu provides for user selection of at least one bookmarked user profile, and for arranging display elements on the display devices upon user selection of a user profile from the bookmark menu, wherein the display elements are arranged according to the indications in the selected user profile.
In a third embodiment, the invention includes a computer readable media encoded with program instructions for causing a computer system to perform the methods of first embodiment.